package io.cici.cc.mybatis.plus.annotation;

import io.cici.cc.mybatis.plus.core.incrementer.DefaultIdGenerator;
import lombok.Getter;

/**
 * 生成ID类型枚举类
 */
@Getter
public enum IdType {
    /**
     * 用户输入ID
     */
    INPUT(1),
    /**
     * 数据库ID自增
     */
    AUTO(2),



    /* 以下2种类型、只有当插入对象ID 为空，才自动填充。 */
    /**
     * 分配ID (主键类型为number或string）, 默认实现类 {@link DefaultIdGenerator}(雪花算法)
     */
    ASSIGN_ID(3),
    /**
     * 分配UUID (主键类型为 string) 默认实现类 {@link DefaultIdGenerator}(UUID.replace("-",""))
     */
    ASSIGN_UUID(4);

    private final int key;

    IdType(int key) {
        this.key = key;
    }
}
